home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / ARGONET / PD / PROGRAMMING / LCLINT2.SPK / test / test_a / db2 / makefile next >
Makefile  |  1996-11-15  |  2KB  |  75 lines

  1. ###
  2. ### LCLint db2 test
  3. ###
  4. ### Taken from sample, fifth iteration: memchecks1
  5. ###
  6.  
  7. .SUFFIXES: .lcl .lcs .lh .h .c .o
  8.  
  9. ACORN_OPTS    =    -IC:ansi +trytorecover
  10.  
  11. CC        =    cc
  12. LCLINT        =    lclint
  13. LCL        =    $(LCLINT) -specundef +lh +quiet -nof
  14. LCLINTLH    =    $(LCLINT) +lh
  15. LCSFILES    =    lcs.dbase lcs.employee lcs.empset lcs.erc lcs.eref lcs.ereftab
  16.  
  17. MODULES = employee eref empset ereftab erc dbase drive.c
  18. OBJS = dbase.o employee.o empset.o erc.o eref.o ereftab.o 
  19.  
  20. .IGNORE:
  21.  
  22. check: $(LCSFILES)
  23.     $(LCLINT) $(ACORN_OPTS) -showcol -allimponly -macrovarprefixexclude +showscan $(MODULES) -expect 15
  24.     $(LCLINT) $(ACORN_OPTS) -showcol +allimponly +showscan $(MODULES) -expect 28
  25.     $(LCLINT) $(ACORN_OPTS) -showcol -memchecks -macrovarprefixexclude +showscan $(MODULES)
  26.  
  27. test:
  28.     @-amu clean
  29.     @-amu check
  30.  
  31. ### The following rules generate .lh and .lcs files from .lcl files.  They also
  32. ### ensure that .h files appear to be updated whenever the corresponding .lh
  33. ### file is updated.
  34.  
  35. .lcl.lh:
  36.     $(LCL) $*.lcl
  37.  
  38. .lcl.lcs:
  39.     $(LCL) $*.lcl
  40.  
  41. .lh.h:
  42.     stamp h.$*
  43.  
  44. .c.o:
  45.     $(CC) -c $*.c
  46.  
  47. ###
  48. ### Clean removes junk and all derived files.
  49. ###
  50.  
  51. clean:
  52.     -wipe lcs ~CFR~V
  53.     -wipe lh ~CFR~V
  54.     -wipe lh_tmp ~CFR~V
  55.  
  56. ### The following dependencies ensure that imported LCL specs 
  57. ### are checked before the specs that import them.
  58.  
  59. lcs.dbase:   lcs.employee lcs.empset
  60. lcs.empset:  lcs.employee
  61. lcs.erc:     lcs.eref
  62. lcl.eref:    lcs.employee
  63. lcs.ereftab: lcs.employee lcs.eref
  64.  
  65. ### The following dependencies ensure that a .o file is recompiled when the
  66. ### corresponding .c file, or one of the .h files it #includes, is changed.
  67.  
  68. dbase.o:    dbase.c bool.h dbase.h employee.h empset.h
  69. drive.o:    drive.c bool.h dbase.h employee.h empset.h erc.h eref.h ereftab.h 
  70. employee.o: employee.c employee.h 
  71. empset.o:   empset.c bool.h empset.h erc.h eref.h employee.h employee.h 
  72. erc.o:      erc.c bool.h erc.h eref.h employee.h 
  73. eref.o:     eref.c eref.h employee.h 
  74. ereftab.o:  ereftab.c bool.h ereftab.h erc.h eref.h employee.h 
  75.